1. Field of the Invention
The present invention relates to a servo control method to synchronously control multi axes of machines. Especially, this invention relates to the servo control method about a Numerical Control machine tool (hereinafter, Numerical Control is abbreviated to NC.), a robot and the like to control a contour.
2. Description of the Related Art
Recent machine tools have been demanded to drive the machine at a high velocity or a high acceleration/deceleration in order to improve working efficiency. Further, a high-precision contouring control is demanded. The contouring control is to relate motions about two axes or more multiple axes at the same time with a linear interpolation, a circular interpolation and the like, thereby an aisle of tool is always controlled.
There are following problems at a high acceleration/deceleration operation and a high velocity operation.
(1) A ball screw is extended (due to an elastic deformation) by an influence of an inertial force caused by the high acceleration/deceleration, whereby generating a distance between a commanded position and a present position.
(2) A radius reduction amount is increased by the high-velocity operation.
(3) Ordinarily, a table is mounted on a saddle, and then a mass ratio between a spindle and a column is twice or more in a vertical type machine. Also in a horizontal type machine, the mass ratio between the spindle and the column is twice or more if a column drive and the like are employed. If the two axes are driven at the same time under the above-described condition, an error due to the inertial force is increased twice or more, so that an elliptic error is generated in the circular interpolation.
(4) At high velocity, a viscous friction increases, and then the velocity cannot be followed in a transient state. Thus, a phase shift occurs, thereby causing an error that an axis of a circular interpolation is inclined.
Following countermeasures and the like against the above problems have been taken conventionally.
(1) As for the velocity, a velocity feedforward corrects a velocity follow-up error. Also as for the acceleration, an acceleration feedforward improves a follow-up characteristics of the acceleration.
(2) A linear scale detects and corrects a mechanical position error.
As some technologies for correcting a mechanical elastic deformation in a semi-closed loop control type,
(1) a technology for correcting the elastic deflection by the inertial force of the machine with the acceleration feedforward (Japanese Patent Application Laid-Open No. H7-78031)
(2) a technology for correcting the elastic deflection by the inertial force of the machine with the feedforward by estimating a rigidity (Japanese Patent Application Laid-Open No. H4-271290)
(3) a technology for correcting the elastic deflection of the machine considering a load weight and a viscous resistance in the semi-closed loop control type (Japanese Patent Application Laid-Open No. 2000-172341)
(4) a technology for correcting the elastic deflection of the machine with feedforward considering the load weight and the viscous resistance (Japanese Patent Application Laid-Open No. H11-184529) have been well known.
The countermeasure (1) is taken with the semi-closed loop control type, thereby cannot correcting a lead error of the ball screw, an error due to a thermal dislocation and the like. Therefore, a high-precision feed drive cannot be executed. The countermeasure (2) is executed, and then the full closed loop control type generates a time lag corresponding to at least a sampling time, thereby causing a follow-up error. Thus, the lead error of the ball screw, the error due to the thermal dislocation and the like cannot be corrected completely. Further, in terms of stability, a gain is not increased in a largely loaded machine, so that a contouring precision is deteriorated. Moreover, if the countermeasure (2) is carried out under hybrid control type, a time lag corresponding to a hybrid time constant is generated. In this case, the lead error of the ball screw, the error due to the thermal dislocation and the like cannot be corrected. Accordingly, in any case, an oblique elliptic error is generated in the circular interpolation.
In any of the above-described cases, the hybrid control type in which a scale feedback is added to an encoder feedback as a first-order lag element has not been described.
The elastic deformation of machine is corrected according to the above-described method in the hybrid control type, and then a difference in the mechanical characteristics is reflected on a transfer function by the scale feedback. Therefore, the difference in the mechanical characteristics is reflected on the transfer function in interpolation of multiple axes, thereby causing a contouring motion error. As a result, a motion precision of the machine is deteriorated.
However, the conventional semi-closed loop control type cannot suppress a mechanical error such as the lead error of the ball screw and the thermal dislocation. As a method for suppressing such the mechanical error, it is considered that the hybrid control type and full closed loop control type are major in future.
The control system of the hybrid control type will be described with reference to an approximate block diagram shown in FIG. 1.
In FIG. 1, a reference numeral 11 denotes a servomotor system. A reference numeral 12 denotes a mechanical system including a load such as a feed screw and a table. A reference numeral 13 denotes a low-pass filter. A reference numeral 14 denotes a pre-compensation part. Further, xcfx89o is a position loop gain, xcfx89h is a first-order lag frequency, s is a Laplace transform operator and Gm(s) is a transfer function of the mechanical system.
The mechanical transfer function Gm(s) is described as follows:
Gm(s)=s2+2xcex6xcfx89nxc2x7s+xcfx89n2
where xcex6 is a damping ratio and xcfx89n is a proper angular frequency.
A total transfer function Gh(s) in this case equals             G      h        ⁡          (      s      )        =                    ω        0            s              1      +                                    ω            0                    s                ⁡                  [                                                                      ω                  h                                                  s                  +                                      ω                    h                                                              ⁢                              {                                                                            G                      m                                        ⁢                                          (                      s                      )                                                        -                  1                                }                                      +            1                    ]                    
Substituting s=jxcfx89 into the above equation, a total frequency transfer function Gh(j xcfx89) equals             G      h        ⁡          (              j        ⁢                  xe2x80x83                ⁢        ω            )        =            A      +              j        ⁢                  xe2x80x83                ⁢        B                    C      +              j        ⁢                  xe2x80x83                ⁢        D            
where A=xcfx89hxcfx89oxcfx89n2 
B=xcfx89oxcfx89n2xcfx89
C=xcfx894xe2x88x92{2xcex6xcfx89n(xcfx89h+xcfx89o)+xcfx89n2}xcfx892+xcfx89hxcfx89oxcfx89n2 
D=xe2x88x92(xcfx89h+xcfx89o+2xcex6xcfx89n)xcfx893+(xcfx89h+xcfx89o)xcfx89n2xcfx89
As a result of the Gh(jxcfx89), a gain |Gh(jxcfx89)| is given as follows:       "LeftBracketingBar"                  G        h            ⁡              (                  j          ⁢                      xe2x80x83                    ⁢          ω                )              "RightBracketingBar"    =                              A          2                +                  B          2                                      C          2                +                  D          2                    
and a phase ∠Gh(jxcfx89) is             ∠G      h        ⁢          xe2x80x83        ⁢          (              j        ⁢                  xe2x80x83                ⁢        ω            )        =            tan              -        1              ⁡          (                        AC          +          BD                          BC          -          AD                    )      
where the proper angular frequency xcfx89n is defined as       ω    n    =            k      M      
and the damping ratio xcex6 is defined as   ζ  =      c          2      ⁢              kM            
Therefore, the gain Gh(jxcfx89) and the phase ∠Gh(jxcfx89) of the hybrid control type are functions of a mass M, a spring constant k, a viscous damping coefficient c, an angular velocity xcfx89, the first-order lag frequency (hybrid frequency) xcfx89h and the position loop gain xcfx89o.
Ordinarily, according to the hybrid control type, the hybrid frequency xcfx89h and the position loop gain xcfx89o are set to have the same value in all the axes, so that no gain shift occurs.
However, in most cases, the mass M, the spring coefficient k, and the viscous damping coefficient c are different between one axis and another axis in the mechanical system. In other words, the elastic dislocation about each axis differs on each axis and a difference in the mass M, the spring coefficient k and the viscous damping coefficient c generates shift of the gain and the phase about each axis. Hence, the shift of the gain or that of the phase occurs between the axes, and then a circular interpolation motion, which executes two-axes synchronous control, induces a path error (the two axes express X axis and Y axis. Hereinafter, two axes are X axis and Y axis.). Therefore, as shown in FIG. 2, a real circle turns to be an oblique ellipse.
X-axis gain and Y-axis gain are exemplified in FIGS. 3A and 3B. X-axis phase and Y-axis phase are exemplified in FIGS. 4A and 4B. In this example, a proper frequency of the X axis is low, thereby indicating that a peak of gain occurs at a resonance point of the machine and there is a large different gain in neighborhood of the resonance point. In addition, the difference of the phase is also large near the resonance point. Therefore, an oblique-elliptical motion locus is generated.
Next, the control system of the full closed loop control type will be described with reference to the approximate block diagram shown in FIG. 5.
A mechanical transfer function Gm(s) in this case is described as follows:
Gm(s)=s2+2xcex6xcfx89nxc2x7s+xcfx89n2
A total transfer function Gfull(s) in this case equals             G      full        ⁢          (      s      )        =                              ω          0                s            ⁢                        G          m                ⁢                  (          s          )                            1      +                                    ω            0                    s                ⁢                              G            m                    ⁢                      (            s            )                              
Substituting s=jxcfx89 into the above equation, a total frequency transfer function Gfull(jxcfx89) is             G      full        ⁡          (              j        ⁢                  xe2x80x83                ⁢        ω            )        =                    A        f            +              j        ⁢                  xe2x80x83                ⁢                  B          f                                    C        f            +              j        ⁢                  xe2x80x83                ⁢                  D          f                    
where Af=xcfx89oxcfx89n2 
Bf=0
Cf=xe2x88x922xcex6xcfx89nxcfx892+xcfx89oxcfx89n2 
Df=xe2x88x92xcfx893+xcfx89n2xcfx89
As a result of the Gfull(jxcfx89), a gain |Gfull(jxcfx89)| is solved as follows:       "LeftBracketingBar"                  G        full            ⁡              (                  j          ⁢                      xe2x80x83                    ⁢          ω                )              "RightBracketingBar"    =                              A          f          2                +                  B          f          2                                      C          f          2                +                  D          f          2                    
and a phases ∠Gfull(jxcfx89) is solved as follows:             ∠G      full        ⁡          (              j        ⁢                  xe2x80x83                ⁢        ω            )        =            tan              -        1              ⁢          (                                                  A              f                        ⁢                          C              f                                +                                    B              f                        ⁢                          D              f                                                                          B              f                        ⁢                          C              f                                -                                    A              f                        ⁢                          D              f                                          )      
where the proper angular frequency xcfx89n is defined as       ω    n    =            k      M      
and the damping ratio xcex6 is defined as   ζ  =      c          2      ⁢                        k          ⁢                      xe2x80x83                    ⁢          M                    
Therefore, the gain Gfull(jxcfx89) and the phase ∠Gfull(jxcfx89) of the full closed loop control type are functions of the mass M, the spring constant k, the viscous damping coefficient c, the angular velocity xcfx89 and the position loop gain xcfx89o.
Ordinarily, the position loop gain xcfx89o is set to have the same value in all the axes, so that no gain shift occurs. However, in most cases, the mass M, the spring coefficient k and the viscous damping coefficient c are different about each axis of the mechanical system.
Accordingly, in case of the full closed loop control type which can correct a mechanical error ideally, a lag corresponding to one cycle of the position loop occurs. Thus, such differences in these mechanical features generate a shift of the gain and the phase about each axis. Therefore, the circular interpolation motion about two axes is executed under the condition that the shift occurs in the gain and the phase between the axes. Then, the oblique elliptical motion shown in FIG. 2 occurs.
A first object of the present invention is to provide a servo control method for correcting an elastic dislocation error in hybrid control type or full closed loop control type including scale feedback, which is feedback compensation with a detected mechanical position value. A second object of the present invention is to provide a servo control method for suppressing a synchronous error in interpolation on multiple axes. A third object is to provide a servo control method for improving a contouring motion precision.
The first aspect of the present invention provides a servo control method comprising the steps of: operating both a set value of a first-order lag time constant of a feedback compensation by a detected mechanical position value and a transfer function corresponding to a change of an angular velocity for each axis under a multiple-axes simultaneous control; and setting a feedforward amount so that the transfer function about the each axis is the same.
The second aspect of the present invention provides a servo control method further comprising the steps of: detecting a change amount of a load mass; operating a change amount of an inertial force due to the change amount of the load mass; and calculating the transfer function about the each axis taking the change amount of the inertial force into account.
The third aspect of the present invention provides a servo control method still further comprising the steps of: operating the change amount of a stiffness about the each axis corresponding to a mechanical position of the load mass; and calculating the transfer function about the each axis taking the change amount of the stiffness into account.
The fourth aspect of the present invention provides a servo control method according to the third aspect of the invention, wherein the transfer function about the each axis is calculated considering both a change of a viscous damping coefficient and a change of a frictional force against a feed speed.
The fifth aspect of the present invention provides a servo control method according to the fourth aspect of the invention, wherein a thermal dislocation amount difference between the axes is added to an elastic dislocation amount.